SSH bảo mật Git
Bảo mật Git
Cho đến thời điểm này, chúng tôi đã sử dụng HTTPS để kết nối với kho lưu trữ từ xa của mình.
HTTPS thường sẽ hoạt động tốt nhưng bạn nên sử dụng SSH nếu làm việc với các mạng không bảo mật. Và đôi khi, một dự án sẽ yêu cầu bạn sử dụng SSH.
SSH là gì
SSH là giao thức mạng shell an toàn được sử dụng để quản lý mạng, truyền tệp từ xa và truy cập hệ thống từ xa.
SSH sử dụng một cặp khóa SSH để thiết lập giao thức mạng bảo mật được xác thực và mã hóa. Nó cho phép liên lạc từ xa an toàn trên các mạng mở không bảo mật.
Khóa SSH được sử dụng để bắt đầu quá trình "bắt tay" an toàn. Khi tạo một bộ khóa, bạn sẽ tạo khóa "công khai" và "riêng tư".
Khóa "công khai" là khóa bạn chia sẻ với bên ở xa. Hãy nghĩ về điều này nhiều hơn như khóa.
Khóa "riêng tư" là khóa bạn giữ cho riêng mình ở một nơi an toàn. Hãy coi đây là chìa khóa của ổ khóa.
Khóa SSH được tạo thông qua thuật toán bảo mật. Tất cả đều rất phức tạp, nhưng nó sử dụng các số nguyên tố và số ngẫu nhiên lớn để làm khóa chung và khóa riêng.
Nó được tạo để khóa chung có thể được lấy từ khóa riêng, nhưng không phải ngược lại.
Tạo cặp khóa SSH
Trong dòng lệnh dành cho Linux, Apple và trong Git Bash dành cho Windows, bạn có thể tạo khóa SSH.
Chúng ta hãy đi qua nó, từng bước một.
Bắt đầu bằng cách tạo khóa mới, sử dụng email của bạn làm nhãn:
Ví dụ
ssh-keygen -t rsa -b 4096 -C " [email protected] " Generating public/private rsa key pair. Enter file in which to save the key (/Users/user/.ssh/id_rsa): Created directory '/Users/user/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/user/.ssh/id_rsa Your public key has been saved in /Users/user/.ssh/id_rsa.pub The key fingerprint is: SHA256:******************************************* [email protected] The key's randomart image is: +---[RSA 4096]----+ | | | | | | | | | | | | | | | | | | +----[SHA256]-----+
Bạn sẽ được nhắc những điều sau thông qua quá trình tạo này:
Enter file in which to save the key (/c/Users/user/.ssh/id_rsa):
Chọn vị trí tệp hoặc nhấn "Enter" để sử dụng vị trí tệp mặc định.
Enter passphrase (empty for no passphrase): Enter same passphrase again:
Nhập cụm mật khẩu an toàn sẽ tạo thêm một lớp bảo mật. Ngăn chặn bất kỳ ai có quyền truy cập vào máy tính sử dụng khóa đó mà không có cụm mật khẩu. Tuy nhiên, nó sẽ yêu cầu bạn cung cấp cụm mật khẩu bất cứ khi nào khóa SSH được sử dụng.
Bây giờ chúng tôi thêm cặp khóa SSH này vào SSH-Agent (sử dụng vị trí tệp ở trên):
Ví dụ
ssh-add /Users/user/.ssh/id_rsa Enter passphrase for /Users/user/.ssh/id_rsa: Identity added: /Users/user/.ssh/id_rsa ( [email protected] )
Bạn sẽ được nhắc cung cấp cụm mật khẩu nếu bạn đã thêm cụm mật khẩu.
Bây giờ cặp khóa SSH đã sẵn sàng để sử dụng.